import Vue from 'vue';

import 'normalize.css/normalize.css'; // 新式的CSS重置方法

import ElementUI from 'element-ui';
import 'element-ui/lib/theme-chalk/index.css';

import '@/styles/index.scss'; // 全局css

import App from './App';
import store from './store';
import router from './router';

import '@/icons'; // icon
import '@/permission'; // 权限控制

import * as filters from './filters'; // global filters

/**
 * 如果不想使用模拟服务器
 * 您想将MockJs用于mock api
 * 你可以执行: mockXHR()
 *
 * 目前MockJs将用于生产环境，
 * 请在上线前将其删除! ! !
 */
// import api from './api/mockAPI.js'
// import { mockXHR } from '../mock'
// if (process.env.NODE_ENV === 'production') {
//   mockXHR()
// }

// 引用API文件
import api from './api/index.js';
// 将API方法绑定到全局
Vue.prototype.$api = api;

// rem 设置
import remConfig from './utils/remConfig';
remConfig();

// 如果想要中文版 element-ui，按如下方式声明
Vue.use(ElementUI, { size: 'small' });

Object.keys(filters).forEach(key => {
  Vue.filter(key, filters[key]);
})

Vue.config.productionTip = false;
// 公共实例
export var bus = new Vue();

new Vue({
  el: '#app',
  router,
  store,
  render: h => h(App)
});
